package exam.web.action;

import java.util.Date;

import exam.common.util.MD5;
import exam.common.util.NullCheckUtil;
import exam.web.action.base.UserActionBase;

public class AddUserAction extends UserActionBase {

	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	
	private String rePassword;
	
	@Override
	public String execute() throws Exception {
		String port = null;
		String btAdd = request.getParameter("btAdd");
		if (NullCheckUtil.isNUll(btAdd)) {
			addActionMessage("Thêm người dùng");
			port = INPUT;
		} else {
			validate();
			if(getFieldErrors().size() != 0) {
				return ERROR;
			}
			if(NullCheckUtil.isNotNull(userDAO.selectByUserName(userEntity.getUserName()))) {
				addActionError("Tên tài khoản đã tồn tại. Vui lòng chọn một tài khoản khác!");
				return ERROR;
			}
			userEntity.setPassword(MD5.encryption(userEntity.getPassword()));
			userEntity.setCreateDate(new Date());
			userEntity.setUpdateDate(new Date());
			if (userDAO.insertUser(userEntity)) {
				addActionMessage(getText("Thêm người dùng thành công"));
				port = SUCCESS;
			}
		}
		return port;
	}
	
//	public void validate() {
//		if (NullCheckUtil.isNUll(getUserEntity().getUserName())
//				|| StringUtils.isEmpty(getUserEntity().getUserName().trim())) {
//			addFieldError("userName","Tên tài khoản không được rỗng");
//	    }
//		if (NullCheckUtil.isNUll(getUserEntity().getPassword())
//				|| StringUtils.isEmpty(getUserEntity().getPassword().trim())) {
//			addFieldError("password","Hãy nhập mật khẩu");
//		}
//		if (NullCheckUtil.isNUll(rePassword)
//				|| StringUtils.isEmpty(rePassword.trim())) {
//			addFieldError("rePassword","Hãy nhập mật khẩu xác nhận");
//		}
//		if (NullCheckUtil.isNUll(getUserEntity().getFullName())
//				|| StringUtils.isEmpty(getUserEntity().getFullName().trim())) {
//			addFieldError("fullName","Hãy nhập họ và tên người dùng");
//		}
//		if (NullCheckUtil.isNUll(getUserEntity().getBirthday())) {
//			addFieldError("birthday","Hãy nhập ngày/tháng/năm sinh");
//		}
//		if (StringUtils.isNotEmpty(rePassword)
//				&& !rePassword.equals(getUserEntity().getPassword())) {
//			addFieldError("rePassword","Mật khẩu xác nhận không đúng");
//		}
//	}
	
	public String getRePassword() {
		return rePassword;
	}

	public void setRePassword(String rePassword) {
		this.rePassword = rePassword;
	}
	
	
}

	
